/************************************************************************

								Heroes IV
					  Copyright 2000, The 3DO Company

	------------------------------------------------------------------
  						 counted_animation.h

	$Header: /heroes4/counted_animation.h $

	$NoKeywords: $

 ************************************************************************/

#if !defined( COUNTED_ANIMATION_H_INCLUDED )
#define COUNTED_ANIMATION_H_INCLUDED

#if _MSC_VER > 1000
#pragma once
#endif

#include "combat_action_message_displayer.h"

// ----------------------------------------------------------------------
// the contract between anything derived from counted animation and battlefield is
// this: when the object constructs, it tells battlefield.  On or before destruction,
// it will remove itself from battlefield.  Battlefield in turn will call animation_ended()
// on all such objects that are still being tracked when it destructs.
// ----------------------------------------------------------------------
// ----------------------------------------------------------------------
// counted animation base class
// ----------------------------------------------------------------------
class t_counted_animation : public t_combat_action_message_displayer
{
public:
	t_counted_animation( t_battlefield& battlefield );
	virtual ~t_counted_animation();

	void animation_ended();
protected:
	bool			m_animation_ended;
};


#endif // COUNTED_ANIMATION_H_INCLUDED